/**
*验证机构代码是否为有效的10位长度数字
*/
$().ready(function() {
	$("#addForm").validate({
		rules: {
			roleGroupId: {
			    required: true,
			    rangelength: [10,10],
				digits: true
			}
		}
	});
});

function setLoading(){
   try {
       bval.remove(); 
       bval = '';
   }catch(e) {
       bval = getBusyOverlay(document.getElementById("loading"),{},{size:17, color:'#cc0000'});
   }
}

/**
* 当填写完毕后使用dwr异步加载数据
*/
function changeInsId(ids){
	//if($("#addForm").validate().form()){
	//	alert("请填写正确的机构代码")
	//	return;
	//}
	setLoading();
	UserDic.getInfoByInsId(ids, 
	{callback:function(data){	
	    //alert(data.length);
	    //alert(data[0].sysName);
	    initInsPriInfo(data);   //初始化机构权限数组
	    initInsSysInfo(data);   //初始化机构系统数组和下拉框
	    initPriv(data[0].sysID);//初始化权限下拉框
		//DWRUtil.removeAllOptions("deptList");
		//DWRUtil.addOptions("deptList",data,"id","alias"); 
		//changeDeptList(oo("insId").value + SPLIT_CHAR_VALUE + oo("deptList").value);
		setLoading();
	},
	errorHandler:function(message){
		Alert(message);
		setLoading();
	},
	timeout:30000
	});

}
/**
 将DWR取得的机构ID信息放入ins_id中，提交时校验用
*/
var ins_id = "";
/**
 将DWR取得的机构权限信息放入数组Ins_pri_info中
*/
var Ins_pri_info = new Array();  //存放机构权限信息，结构：sysID,roleGroupID, roleGroupName
function initInsPriInfo(list){
   //清空Ins_pri_info
   Ins_pri_info = new Array();
 	for(var i=0; i<list.length; i++){
 	    ins_id = list[i].insID;
 	    if(list[i].insName != null && list[i].insName != ""){
 	    	oo("insName").value = list[i].insName;
 	    }
        Ins_pri_info[Ins_pri_info.length] = new Array(list[i].sysID, list[i].roleGrpID, list[i].roleGrpName);
 	}
}

/**
 将DWR取得的机构信息放入数组Ins_sys_info中
*/
 var Ins_sys_info = new Array(); //初始化此机构下包括的系统代码
 function initInsSysInfo(list){
  //清空Ins_sys_info
  Ins_sys_info = new Array();
   for(var i=0; i<list.length; i++){
     //判断Ins_sys_info中是否已存在此ID
     var flag = true;
    // alert("Ins_sys_info.length:" + Ins_sys_info.length);
     for(var j=0; j<Ins_sys_info.length; j++){
        if(Ins_sys_info[j][0] == list[i].sysID){
           flag = false;
           break;
        }
     }
     if(flag){
       //在Ins_sys_info中新增
       Ins_sys_info[Ins_sys_info.length] = new Array(list[i].sysID, list[i].sysName);
     }
   }
   //将Ins_sys_info放入到下拉框中
       var target2 = oo("deptList");
          //清空下拉框
       DWRUtil.removeAllOptions("deptList");
       DWRUtil.removeAllOptions("targetList2");
	   for(var i=0; i<Ins_sys_info.length; i++){
	       if(!(Ins_sys_info[i][0] == null || Ins_sys_info[i][0] == ""))
	       target2.options[target2.length]=new Option(Ins_sys_info[i][1], Ins_sys_info[i][0]);
	   }
 }
 
 /**
 *  根据选中系统ID显示系统内权限
 */
function initPriv(sysID){
   var target = oo("targetList1");
   var target2 = oo("targetList2");
   //清空下拉框
   DWRUtil.removeAllOptions("targetList1");
   for(var i=0; i<Ins_pri_info.length; i++){
       if(Ins_pri_info[i][0] == sysID && !(Ins_pri_info[i][1] == null || Ins_pri_info[i][1] == "") ){
         	//判断已有权限中是否包含此记录
         	var flag = true;
         	for(var j=0; j<target2.length; j++){
         	   var selectedValue =target2[j].value;
				if(selectedValue.indexOf("*")!=-1){
					var _num =selectedValue.indexOf("*");
					selectedValue=selectedValue.substring(0,_num);
				} 
         	   if(selectedValue == Ins_pri_info[i][1]){
         	     flag = false;
         	     break;
         	   }
         	}
         	if(flag){
         		target.options[target.length]=new Option(Ins_pri_info[i][2], Ins_pri_info[i][1]);
         	}
       }
   }	
}



